package com.cn.kehong.dao;

import com.cn.kehong.domain.ProductPackage;
import com.cn.kehong.domain.ProductPackageExample;
import java.util.List;

import com.cn.kehong.domain.ProductPackageVo;
import com.cn.kehong.utils.QueryForm;
import org.apache.ibatis.annotations.Param;

public interface ProductPackageMapper {
    int countByExample(ProductPackageExample example);

    int deleteByExample(ProductPackageExample example);

    int insert(ProductPackage record);

    int insertSelective(ProductPackage record);

    List<ProductPackage> selectProductPackagePeriods(QueryForm queryForm);
    int selectProductPackagePeriodCount(QueryForm queryForm);

    List<ProductPackage> selectByExample(ProductPackageExample example);

    List<ProductPackage> selectProductPackageByRoom(QueryForm queryForm);

    ProductPackage selectProductPackageById(String id);

    int updateByExampleSelective(@Param("record") ProductPackage record, @Param("example") ProductPackageExample example);

    int updateByExample(@Param("record") ProductPackage record, @Param("example") ProductPackageExample example);

    int getProductPackageCount(QueryForm queryForm);

    List<ProductPackageVo> getProductPackageList(QueryForm queryForm);

    int getBatchCount(QueryForm queryForm);

    int getSinglePackageCount(QueryForm queryForm);

    List<ProductPackageVo> getBatchList(QueryForm queryForm);

    List<ProductPackageVo> getSinglePackageList(QueryForm queryForm);

    int getPackageBatchCount(QueryForm queryForm);

    List<ProductPackage> getPackageBatchList(QueryForm queryForm);
    
    List<ProductPackage> selectProductPackageRecentOneDay(QueryForm queryForm);

    ProductPackage selectPackageWithJobByJobId(String jobId);

    int  updateProductPackageCompleteNum(String id);

    List<ProductPackage> getProductPackageDetail(QueryForm queryForm);

    List<ProductPackage> selectProductPackagePeriodsEx(QueryForm queryForm);
}